gtk: Chain up in realize()
authorBenjamin Otte <otte@redhat.com>
Wed, 2 Nov 2016 06:16:08 +0000 (07:16 +0100)
committerBenjamin Otte <otte@redhat.com>
Wed, 2 Nov 2016 06:16:08 +0000 (07:16 +0100)
... instead of copy/paste from gtk_widget_real_realize.

gtk/gtkbutton.c
gtk/gtkcolorswatch.c
gtk/gtkexpander.c
gtk/gtkmenuitem.c
gtk/gtknotebook.c
gtk/gtkpaned.c
gtk/gtkpathbar.c
gtk/gtkstack.c
gtk/gtktoolbar.c
gtk/gtktoolitem.c

index b46eabe7b92e4c976d94793e2aec58f00bcd4f19..048b2c15e8870b6a19dc768dc52381886fb73f6e 100644 (file)
@@ -776,17 +776,12 @@ gtk_button_realize (GtkWidget *widget)
   GtkButton *button = GTK_BUTTON (widget);
   GtkButtonPrivate *priv = button->priv;
   GtkAllocation allocation;
-  GdkWindow *window;
 
-  gtk_widget_get_allocation (widget, &allocation);
-
-  gtk_widget_set_realized (widget, TRUE);
+  GTK_WIDGET_CLASS (gtk_button_parent_class)->realize (widget);
 
-  window = gtk_widget_get_parent_window (widget);
-  gtk_widget_set_window (widget, window);
-  g_object_ref (window);
+  gtk_widget_get_allocation (widget, &allocation);
 
-  priv->event_window = gdk_window_new_input (window,
+  priv->event_window = gdk_window_new_input (gtk_widget_get_window (widget),
                                              gtk_widget_get_events (widget)
                                              | GDK_BUTTON_PRESS_MASK
                                              | GDK_BUTTON_RELEASE_MASK
index 971503ac02b34ffb5bc5988167dd4acddb09036c..565640a8003abcca4ca5643d4d4929a5b544240e 100644 (file)
@@ -452,16 +452,10 @@ swatch_realize (GtkWidget *widget)
 {
   GtkColorSwatch *swatch = GTK_COLOR_SWATCH (widget);
   GtkAllocation allocation;
-  GdkWindow *window;
 
-  gtk_widget_get_allocation (widget, &allocation);
-  gtk_widget_set_realized (widget, TRUE);
+  GTK_WIDGET_CLASS (gtk_color_swatch_parent_class)->realize (widget);
 
-  window = gtk_widget_get_parent_window (widget);
-  gtk_widget_set_window (widget, window);
-  g_object_ref (window);
-
-  swatch->priv->event_window = gdk_window_new_input (window,
+  swatch->priv->event_window = gdk_window_new_input (gtk_widget_get_window (widget),
                                                      gtk_widget_get_events (widget)
                                                      | GDK_BUTTON_PRESS_MASK
                                                      | GDK_BUTTON_RELEASE_MASK
index 865b654329386abd77603724614c20ec09a47ffd..4540569da96ce0fe1fda9582a2af5a9204180121 100644 (file)
@@ -534,17 +534,14 @@ gtk_expander_realize (GtkWidget *widget)
 {
   GtkAllocation allocation;
   GtkExpanderPrivate *priv;
-  GdkWindow *window;
 
   priv = GTK_EXPANDER (widget)->priv;
 
-  gtk_widget_get_allocation (widget, &allocation);
+  GTK_WIDGET_CLASS (gtk_expander_parent_class)->realize (widget);
 
-  window = gtk_widget_get_parent_window (widget);
-  gtk_widget_set_window (widget, window);
-  g_object_ref (window);
+  gtk_widget_get_allocation (widget, &allocation);
 
-  priv->event_window = gdk_window_new_input (gtk_widget_get_parent_window (widget),
+  priv->event_window = gdk_window_new_input (gtk_widget_get_window (widget),
                                              gtk_widget_get_events (widget)
                                              | GDK_BUTTON_PRESS_MASK
                                              | GDK_BUTTON_RELEASE_MASK
@@ -554,7 +551,6 @@ gtk_expander_realize (GtkWidget *widget)
   gtk_widget_register_window (widget, priv->event_window);
 
   gtk_gesture_set_window (priv->multipress_gesture, priv->event_window);
-  gtk_widget_set_realized (widget, TRUE);
 }
 
 static void
index 9330a441e16e2ffa18338638f010039b89e6dbb4..f77ea0a1f85cb28da9cb64d2f62f1e47bd09f7d2 100644 (file)
@@ -1229,17 +1229,12 @@ gtk_menu_item_realize (GtkWidget *widget)
   GtkMenuItem *menu_item = GTK_MENU_ITEM (widget);
   GtkMenuItemPrivate *priv = menu_item->priv;
   GtkAllocation allocation;
-  GdkWindow *window;
 
-  gtk_widget_set_realized (widget, TRUE);
-
-  window = gtk_widget_get_parent_window (widget);
-  gtk_widget_set_window (widget, window);
-  g_object_ref (window);
+  GTK_WIDGET_CLASS (gtk_menu_item_parent_class)->realize (widget);
 
   gtk_widget_get_allocation (widget, &allocation);
 
-  priv->event_window = gdk_window_new_input (gtk_widget_get_parent_window (widget),
+  priv->event_window = gdk_window_new_input (gtk_widget_get_window (widget),
                                              gtk_widget_get_events (widget)
                                              | GDK_BUTTON_PRESS_MASK
                                              | GDK_BUTTON_RELEASE_MASK
index a15ffd89173821c1bf147eafa1ea0aee7f271c9f..25b6c99f1621c75835d2137c7875e7bd013c8c0a 100644 (file)
@@ -1818,18 +1818,13 @@ gtk_notebook_realize (GtkWidget *widget)
 {
   GtkNotebook *notebook = GTK_NOTEBOOK (widget);
   GtkNotebookPrivate *priv = notebook->priv;
-  GdkWindow *window;
   GdkRectangle event_window_pos;
 
-  gtk_widget_set_realized (widget, TRUE);
+  GTK_WIDGET_CLASS (gtk_notebook_parent_class)->realize (widget);
 
   gtk_css_gadget_get_border_allocation (priv->header_gadget, &event_window_pos, NULL);
 
-  window = gtk_widget_get_parent_window (widget);
-  gtk_widget_set_window (widget, window);
-  g_object_ref (window);
-
-  priv->event_window = gdk_window_new_input (gtk_widget_get_parent_window (widget),
+  priv->event_window = gdk_window_new_input (gtk_widget_get_window (widget),
                                              gtk_widget_get_events (widget)
                                              | GDK_BUTTON_PRESS_MASK
                                              | GDK_BUTTON_RELEASE_MASK
index 33bc90136328a8ecd9a37973f3312bf5955ac3bc..99ce300faa1f9c0b610fd8239f8c94ad979d9bc9 100644 (file)
@@ -1566,15 +1566,10 @@ gtk_paned_realize (GtkWidget *widget)
 {
   GtkPaned *paned = GTK_PANED (widget);
   GtkPanedPrivate *priv = paned->priv;
-  GdkWindow *window;
-
-  gtk_widget_set_realized (widget, TRUE);
 
-  window = gtk_widget_get_parent_window (widget);
-  gtk_widget_set_window (widget, window);
-  g_object_ref (window);
+  GTK_WIDGET_CLASS (gtk_paned_parent_class)->realize (widget);
 
-  priv->handle = gdk_window_new_input (window,
+  priv->handle = gdk_window_new_input (gtk_widget_get_window (widget),
                                        gtk_widget_get_events (widget)
                                        | GDK_BUTTON_PRESS_MASK
                                        | GDK_BUTTON_RELEASE_MASK
index 7ad0c831cc6d51f67bee6382d53c7302c88127a8..76dddbcf7d852c893cf578b47c9d5348590ffa7e 100644 (file)
@@ -460,20 +460,14 @@ gtk_path_bar_unmap (GtkWidget *widget)
 static void
 gtk_path_bar_realize (GtkWidget *widget)
 {
-  GtkPathBar *path_bar;
+  GtkPathBar *path_bar = GTK_PATH_BAR (widget);
   GtkAllocation allocation;
-  GdkWindow *window;
 
-  gtk_widget_set_realized (widget, TRUE);
-
-  path_bar = GTK_PATH_BAR (widget);
-  window = gtk_widget_get_parent_window (widget);
-  gtk_widget_set_window (widget, window);
-  g_object_ref (window);
+  GTK_WIDGET_CLASS (gtk_path_bar_parent_class)->realize (widget);
 
   gtk_widget_get_allocation (widget, &allocation);
 
-  path_bar->priv->event_window = gdk_window_new_input (gtk_widget_get_parent_window (widget),
+  path_bar->priv->event_window = gdk_window_new_input (gtk_widget_get_window (widget),
                                                        gtk_widget_get_events (widget)
                                                        | GDK_SCROLL_MASK,
                                                        &allocation);
index cf814b7dfbf0ee7fd001829b4922b8b9f74c574c..b865104eeffe120b4b5d341af27b3459fff1929f 100644 (file)
@@ -332,8 +332,7 @@ gtk_stack_realize (GtkWidget *widget)
   GList *l;
   gint event_mask;
 
-  gtk_widget_set_realized (widget, TRUE);
-  gtk_widget_set_window (widget, g_object_ref (gtk_widget_get_parent_window (widget)));
+  GTK_WIDGET_CLASS (gtk_stack_parent_class)->realize (widget);
 
   gtk_css_gadget_get_content_allocation (priv->gadget, &allocation, NULL);
 
index a708506e16465a5c3df7a5745c6aa4654e6ae226..fd2f4f1d0c9a4057393f2ce41500158cf61b7d13 100644 (file)
@@ -773,17 +773,12 @@ gtk_toolbar_realize (GtkWidget *widget)
   GtkAllocation allocation;
   GtkToolbar *toolbar = GTK_TOOLBAR (widget);
   GtkToolbarPrivate *priv = toolbar->priv;
-  GdkWindow *window;
 
-  gtk_widget_set_realized (widget, TRUE);
+  GTK_WIDGET_CLASS (gtk_toolbar_parent_class)->realize (widget);
 
   gtk_widget_get_allocation (widget, &allocation);
 
-  window = gtk_widget_get_parent_window (widget);
-  gtk_widget_set_window (widget, window);
-  g_object_ref (window);
-
-  priv->event_window = gdk_window_new_input (gtk_widget_get_parent_window (widget),
+  priv->event_window = gdk_window_new_input (gtk_widget_get_window (widget),
                                              gtk_widget_get_events (widget)
                                              | GDK_BUTTON_PRESS_MASK
                                              | GDK_BUTTON_RELEASE_MASK
index 54e54a1ea031d26ea9bc074e4bdea05339efff0a..e7a8a8b8c99b407c4dec901cb60e3d8d6352b363 100644 (file)
@@ -336,15 +336,9 @@ create_drag_window (GtkToolItem *toolitem)
 static void
 gtk_tool_item_realize (GtkWidget *widget)
 {
-  GtkToolItem *toolitem;
-  GdkWindow *window;
-
-  toolitem = GTK_TOOL_ITEM (widget);
-  gtk_widget_set_realized (widget, TRUE);
+  GtkToolItem *toolitem = GTK_TOOL_ITEM (widget);
 
-  window = gtk_widget_get_parent_window (widget);
-  gtk_widget_set_window (widget, window);
-  g_object_ref (window);
+  GTK_WIDGET_CLASS (gtk_tool_item_parent_class)->realize (widget);
 
   if (toolitem->priv->use_drag_window)
     create_drag_window(toolitem);